package com.winsdom.service;

import com.winsdom.dto.contract.AddContractDto;
import com.winsdom.dto.contract.ContractDto;
import com.winsdom.dto.contract.ExpenditureDto;
import com.winsdom.entity.Contract;
import com.baomidou.mybatisplus.extension.service.IService;
import com.winsdom.result.Result;

/**
 * <p>
 * 合同主表 服务类
 * </p>
 *
 * @author 
 * @since 2025-05-12
 */
public interface IContractService extends IService<Contract> {

    Result getContractList(ContractDto contractDto);

    Result getContractDetail(Long contractId);

    Result invalidContract(Long contractId);

    Result addContract(AddContractDto contractDto);

    Result getList();

    Result getExpenditureList(ExpenditureDto expenditureDto);

    Result getFeeFormulaList(Integer expenditureId, Integer type);

    Result getThreeTables(Integer expenditureId, Long categoryId);

    Result updateContract(AddContractDto contractDto);
}

